#ifndef DLCW_H
#define DLCW_H
#include<stdio.h>
#include<string.h>
#include<string>
#include<stdlib.h>
#include"zczh.h"
#define N sizeof(struct Account)   //宏定义
#define M sizeof(struct income_and_expenditure)

struct income_and_expenditure      //收支情况
{
    float iae;     //收入或支出
    char ch;    //-号代表支出，+号代表收入
    int year;    //年月日
    int month;
    int day;
    int num;    //标号
    char source_or_aim[50];    // 收入来源或支出目的
    struct income_and_expenditure* next;       // 指针域 ，后接
    struct income_and_expenditure* pre;   //前驱
};
typedef struct income_and_expenditure IAE;
typedef IAE* IAEP;
struct Account       //账户信息
{
    char name[20];    //账号昵称
    char password[18];       //密码
    struct Account* next;   //指针域
};
typedef struct Account Acc;
typedef Acc* Accp;

Accp ff();                     //将存账号的文件里的内容输出到链表中
IAEP ss();                   //将存账单的文件里的内容输出到链表中
IAEP ad_ss(char ad_name[20]);    //管理员将指定账户内容输出到链表
void signin();               //登陆或注册
void login();                 // 注册账号
void menu();                 //菜单
void ad_menu();                //管理员账号
void over();                  //退出系统
void amend_password();         //修改密码
void amend_ad_password();      //管理员修改密码
void add_information();       //添加信息
void print_information();     //账单明细
void print_ad_information();  //显示用户信息
void print_accname();        //查看所有账号信息
void find_information();     //查找信息
void delete_information();   //删除信息
void amend_information();    //修改信息
void amend_ad_information();   //修改用户信息
void save_account(Accp p,zczh *z);    //保存账号
void save_information(IAEP p); //保存信息
double Find_sum(const char ad_name[20]);//查询会员等级
#endif // DLCW_H
